import trim.common.utils.*;
import trim.common.*;
int n=50;
int[] fLengths=new int[n];
double[] dualVars=new double[n];
Material m=new Material(307);
double[] w1=new double[m.getLength()+1];
int[][] w2=new int[m.getLength()+1][n]
for(int i=0;i<n;i++)
{
    dualVars[i]=(i+1)/(double)10000+0.00000*i;
    fLengths[i]=i+1;
}

//Utils.getBestPattern_DP(fLengths, dualVars, n, m, w1, w2)
stateWindow.logPrintln(""+fLengths+"  "+m.length);
stateWindow.logPrintln(""+dualVars+" "+n);
long s=System.currentTimeMillis();
stateWindow.logPrintln(""+Utils.getBestPattern_BB(fLengths, dualVars, n, m, 100.0));
long e=System.currentTimeMillis();
stateWindow.logPrintln("bb-"+(e-s)+"ms");
s=e;
stateWindow.logPrintln(""+Utils.getBestPattern_DP(fLengths, dualVars, n, m, w1, w2));
e=System.currentTimeMillis();
stateWindow.logPrintln("dp-"+(e-s)+"ms");

